package com.chen.servlet;

import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

@WebServlet(value = "/t4")
public class TestServletContext02 extends HttpServlet {

    @Override
    protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        System.out.println("-------------ServletContext 常用的API--------------");
        ServletContext servletContext = req.getServletContext();

        // 获取项目中某个文件 | 目录 的磁盘路径
        // 获取资源在web目录中的路径
        // D:\tomcat\JAVAWEB\javaweb\out\artifacts\web02_ServletConfigAndServletContext_war_exploded\ upload
        String path = servletContext.getRealPath("chen");
        System.out.println(path);


        // 获取项目的上下文路径  也叫 项目的访问路径
        String contextPath = servletContext.getContextPath();
        System.out.println(contextPath);

        // 通过 ServletContext 也叫应用域对象 , 所有的servlet共享一个ServletContext对象
        // 域就是某个范围的意思
        // 一般域都有
        // setAttribute(key,value ) 添加数据 | 修改数据
        // getAttribute(key) 获取域中数据
        // removeAttribute(key) 删除域中的某个数据
//        servletContext.setAttribute("sex", "男");
        System.out.println(servletContext.getAttribute("sex"));

        servletContext.setAttribute("sex", "女");
//        servletContext.removeAttribute();


    }
}
